package com.swt.gap.dao;

import com.github.pagehelper.Page;
import com.swt.gap.model.entity.FileClass;
import com.swt.gap.model.vo.fileclass.UserFileClassVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface FileClassDao {
    int deleteByPrimaryKey(Integer fileClassId);

    int insert(FileClass record);

    int insertSelective(FileClass record);

    FileClass selectByPrimaryKey(Integer fileClassId);

    int updateByPrimaryKeySelective(FileClass record);

    int updateByPrimaryKey(FileClass record);

    int countSameName(@Param("userId") int userId,
                      @Param("fileClassName") String fileClassName,
                      @Param("fileClassId") Integer fileClassId);

    Page<UserFileClassVO> getUserFileClassList(@Param("userIds") List<Integer> userIds,
                                               @Param("keyword") String keyword,
                                               @Param("fileClassId") Integer fileClassId);


    List<FileClass> listByUser(@Param("userIds") List<Integer> userIds, @Param("keyword") String keyword);
}